package top.infopub.mgr.bpa.service;


import com.github.pagehelper.Page;
import top.infopub.dto.bpa.PrimarySureDto;
import top.infopub.generic.GenericService;
import top.infopub.mgr.bpa.domain.IncaeSureDomain;
import top.infopub.mgr.bpa.vo.IncaeSureVo;
import top.infopub.model.bpa.*;

import java.util.List;


public interface IncaeSureService extends GenericService<IncaeSure, String> {

    /**
     * 根据条件查询对内建安产值确权记录
     * @param IncaeSureVo
     * @return 
     * @see
     */
    Page<IncaeSureDomain> selectByDomainWhere(Page<IncaeSureDomain> page, IncaeSureVo incaeSureVo);

    /**
     * 根据条件查询对内建安产值确权记录--我审批的列表
     * @param IncaeSureVo
     * @return 
     * @see
     */
    Page<IncaeSureDomain> selectMyCheckByDomainWhere(Page<IncaeSureDomain> page,
                                                     IncaeSureVo incaeSureVo);

    /**
     * 执行新增
     */
    void saveIncaeSure(IncaeSure incaeSure, List<IncaeSureAtt> incaeSureAtts,
                       List<IncaeSureList> incaeSureLists, List<IncaeSureSub> incaeSureSubs,
                       List<IncaeSureDetail> incaeSureDetails);
    
    /**
     * 详情页
     */
    IncaeSureVo queryById(String id);

    String insertById(PrimarySureDto primarySureDto, String creator);

    void updateByIdSelective(PrimarySureDto primarySureDto, String modifier);

}